package com.own.component.common.util;

import lombok.extern.slf4j.Slf4j;

import java.util.Map;
import java.util.stream.Collectors;

/**
 * ParamUtil
 *
 * @author chenxueli
 * @date 2022-08-05 10:05:00
 */
@Slf4j
public class ParamUtil {

    /**
     * 参数排序
     *
     * @param param 参数信息
     * @return 排序后的字符串信息
     */
    public static String sort(Map<String, String> param) {
        return param.keySet().stream().sorted(String::compareTo).map(key -> key + "=" + param.get(key)).collect(Collectors.joining("&"));
    }

    /**
     * 参数排序
     *
     * @param param 参数信息
     * @return 排序后的字符串信息
     */
    public static String sortObject(Map<String, Object> param) {
        return param.keySet().stream().sorted(String::compareTo).map(key -> key + "=" + param.get(key).toString()).collect(Collectors.joining("&"));
    }

}
